package com.zhangtai.modules.entity.employee;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zhangtai.config.LongJsonDeserializer;
import com.zhangtai.config.LongJsonSerializer;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
	

/**
 * 
 *
 * @author chenshun
 * @email sunlightcs@gmail.com
 * @date 2020-08-19 10:47:41
 */
@Data
@TableName("tb_employee_archive")
public class EmployeeArchiveEntity implements Serializable {
	private static final long serialVersionUID = 1L;

			/**
		 * 编号
		 */
				@TableId
		@JsonDeserialize(using = LongJsonDeserializer.class)
		@JsonSerialize(using = LongJsonSerializer.class)
			private Long oid;
			/**
		 * 员工编号
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long employeeOid;
			/**
		 * 姓名
		 */
			private String name;
			/**
		 * 性别
		 */
			private String gender;
			/**
		 * 身份证号
		 */
			private String idcard;
			/**
		 * 民族
		 */
			private String nation;
			/**
		 * 籍贯
		 */
			private String nativeplace;
			/**
		 * 国籍
		 */
			private String nationality;
			/**
		 * 手机
		 */
			private String mobile;
			/**
		 * 政治面貌
		 */
			private String polity;
			/**
		 * 户口所在地
		 */
			private String regresidence;
			/**
		 * 家庭地址
		 */
			private String address;
			/**
		 * 个人电子邮件
		 */
			private String privatemail;
			/**
		 * 健康状态
		 */
			private String healthstatus;
			/**
		 * "是否退伍兵 1:不是，2是
		 */
			private String disbandment;
			/**
		 * 婚姻状况，1：未婚，2：已婚
		 */
			private String marital;
			/**
		 * 参加工作日期
		 */
			private Date beginworkdate;
			/**
		 * 生日
		 */
			private Date birthday;
			/**
		 * 操作时间
		 */
			private Date operatetime;
			/**
		 * 0:正常,1:删除
		 */
			private Integer isDelete;
			/**
		 * 0:社招，1：实习生
		 */
			private String socialTrainee;
			/**
		 * 联系方式
		 */
			private String contact;
			/**
		 * 拟录用部门
		 */
			private String unitname;
			/**
		 * 拟录用公司
		 */
			private String orgname;
			/**
		 * 拟录用岗位
		 */
			private String jobname;
			/**
		 * 预计入职时间
		 */
			private Date hiredate;
			/**
		 * 管理职级
		 */
			private String managementJoblevel;
			/**
		 * 专业职级
		 */
			private String professionJoblevel;
			/**
		 * 试用期
		 */
			private Integer probationday;
			/**
		 * 固定月薪
		 */
			private BigDecimal monthlySalary;
			/**
		 * 模块绩效
		 */
			private BigDecimal performance;
			/**
		 * 二维码
		 */
			private String qrcodeUrl;
			/**
		 * 0:新建 ，1：填写完以保存 2：bpm待审批，3：审批完成，4：作废,5:发送完毕，6：流程被驳回
		 */
			private Integer status;
			/**
		 * 
		 */
			private Integer preSubmit;
			/**
		 * 招聘渠道,1:猎头，2：网站，3：内部推荐，4：外部推荐，5：现场招聘，6：校园招聘，7：其他
		 */
			private String channel;
			/**
		 * 招聘网站，1：广西人才，2：智联，3：58同城，4：前程无忧，5：猎聘网，6：其他
		 */
			private String recruitmentWeb;
			/**
		 * 推荐人-内部
		 */
			private String innerReferrer;
			/**
		 * 推荐人-外部
		 */
			private String outerReferrer;
			/**
		 * 条线
		 */
			private String line;
			/**
		 * 体系
		 */
			private String jobSystem;
			/**
		 * 工号
		 */
			private String code;
			/**
		 * 流程id
		 */
			private String flowId;
			/**
		 * token
		 */
			private String token;
			/**
		 * 条线id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long lineId;
			/**
		 * 体系id
		 */	@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long jobSystemId;
			/**
		 * 薪资组id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long salaryGroupId;
			/**
		 * 薪资组分配情况，0:未分配，1：已分配
		 */
			private Integer isDistribute;
			/**
		 * 管理职级id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long managementJoblevelId;
			/**
		 * 专业职级id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long professionJoblevelId;
			/**
		 * 职位id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long jobId;
			/**
		 * 部门id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long unitId;
			/**
		 * 公司id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long orgId;
			/**
		 * 职级id
		 */
			@JsonDeserialize(using = LongJsonDeserializer.class)
			@JsonSerialize(using = LongJsonSerializer.class)
			private Long jobLevelId;
			/**
		 * 职级
		 */
			private String jobLevel;
			/**
		 * 薪带宽款监控是否删除，0：正常，1：删除
		 */
			private Integer salaryBandMonitoringIsDelete;
			/**
		 * 是否已发送offer,0:未发送，1：已发送
		 */
			private Integer isOffer;
			/**
		 * 是否公司领导，null:不是，1：是
		 */
			private Integer iscentreprincipal;
			/**
		 * 是否部门领导，null:不是，1：是
		 */
			private Integer isdepartmentprincipa;
			/**
		 * 招聘负责人
		 */
			private String principal;
			/**
		 * 0:新员工录用流程，1：员工调动流程
		 */
			private Integer flowType;
			/**
		 * 入职类型 0:新员工，1：复职员工，2：旧员工 3：流程终止
		 */
			private Integer isReinstate;
			/**
		 * 转正日期
		 */
			private Date regularDay;
			/**
		 * 是否转正0:未转正，1：转正 ，2：延期转正 3：不予转正
		 */
			private Integer isRegular;
			/**
		 * 0:转正未处理，1：已处理
		 */
			private Integer regularIsDone;
			/**
		 * 员工状态，2：在职，9：实习，3,4,5,6：离职
		 */
			private String employeestatus;
			/**
		 * 职级类别，1：专业2:管理，
		 */
			private Integer jobLevelType;
			/**
		 * 工作地点
		 */
			private String workAddress;
			/**
		 * 用工类型
		 */
			private String jobType;
			/**
		 * 合同类型
		 */
			private String contractType;
			/**
		 * 合同签署状态 0：未签 1已签
		 */
			private Integer contractStatus;
			/**
		 * 合同期限类型
		 */
			private String contractTimeType;
			/**
		 * 劳动合同期限
		 */
			private Integer laborContractYears;
			/**
		 * 甲方主体
		 */
			private String employerCompany;
			/**
		 * 甲方主体id
		 */
			private Integer employerCompanyId;
			/**
		 * 合同生效日期
		 */
			private Date contractBeginDate;
			/**
		 * 合同截止日期
		 */
			private Date contractEndDate;
			/**
		 * 合同签订日期
		 */
			private Date signDate;
			/**
		 * 亲属姓名
		 */
			private String relativeName;
			/**
		 * 亲属身份证
		 */
			private String relativeIdCard;
			/**
		 * 亲属关系
		 */
			private String relationship;
			/**
		 * 亲属所在单位
		 */
			private String relativeUnit;
			/**
		 * 合同签订人
		 */
			private String signNer;
			/**
		 * 离职日期
		 */
			private Date dimissionTime;
			/**
		 * 
		 */
			private Date createTime;
			/**
		 * 
		 */
			private Date updateTime;
			/**
		 * 记录
		 */
			private String record;
			/**
		 * 备注
		 */
			private String remark;
			/**
		 * 员工状态：0.在职，1.复职
		 */
			private Integer flag;
			/**
		 * 处理状态 0、SSC处理中 1、评分审核中 2、薪酬核定中 3、员工发起中 4、BPM审批中 5、已办结
		 */
			private Integer dealStatus;
			/**
		 * 薪资备注
		 */
			private String salaryRemark;
			/**
		 * 是否发送了员工录用通知
		 */
			private Integer isHireNotice;
			/**
		 * 负责人工号
		 */
			private String principalUserCode;
			/**
		 * 用户是否填了信息，0：未填，1：已填
		 */
			private Integer isMemberDone;
			/**
		 * 是否确认入职，0：未确认，1：已确认
		 */
			private Integer isHireDone;
			/**
		 * 合同状态，0：合同未发送，1：合同已发送，2合同已签署
		 */
			private Integer isSendContract;
			/**
		 * e签宝流程id
		 */
			private Integer esignFlowId;
			/**
		 * 入职状态：0.未处理，1.已处理
		 */
			private Integer isEntryStatus;
			/**
		 * 插入日期
		 */
			private Date insetDate;
			/**
		 * 退伍军人编号
		 */
			private String veteranNum;
			/**
		 * 终止备注
		 */
			private String endRemark;
	
}
